"""
Простая демонстрация работы собственного алгоритма.
"""

import ml_2i # импортируем библиотеку своего алгоритма
import list_usd_rus # импортируем наш парсер данных курса доллара с ЦБ

#list_usd_rus.new_data(9) # Запрос данных о курсе доллара за
# последние 9 лет


delit = 30 # На сколько дней предсказание
fllst = list_usd_rus.lst() # Список цен за год
trlst = fllst[:len(fllst)-200] # Из них используются для тренировки

# Формирование тренировочных примеров #
tr_ex = ml_2i.convert_to_trx_v4(trlst, delit)
#-----#

# Тренировка #
model = ml_2i.new_Model()
model.training_examples = tr_ex

model.start_training_v4()
#---#

# Предсказание #
from_dt = 1 # С какого идентификатора берём за данные input
from_dt = len(fllst)-from_dt-delit
to_predict = fllst[from_dt:from_dt+delit] # Формирование input данных
wlb = fllst[from_dt+delit-1:from_dt+delit*2]

inpt, out = model.new_prediction_v4(to_predict) # Процесс предсказания
out = ml_2i.medium_smooth_graph(inpt, out) # Сглаживание
out = ml_2i.medium_smooth_graph(inpt, out) # Сглаживание
#-----#


# Демонстрация #
out.reverse()
out.append(inpt[len(inpt)-1])
out.reverse()
ml_2i.show_graph([range(len(inpt)), inpt, "Input"], [range(len(inpt)-1,len(inpt)+len(out)-1), out, "v4+MSG"],
                 [range(len(inpt)-1,len(inpt)+len(wlb)-1), wlb, "Will be"])
#-end-#